package com.odontosis.view.parametros;

import java.util.ArrayList;
import java.util.Collection;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.lang.StringUtils;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

import com.odontosis.acesso.filtro.PermissaoAcesso;
import com.odontosis.entidade.GrupoUsuario;
import com.odontosis.entidade.ParametrosFIOD;
import com.odontosis.entidade.ParametrosMalaDireta;
import com.odontosis.entidade.Usuario;
import com.odontosis.ioc.ContainerIoc;
import com.odontosis.service.ParametrosMalaDiretaService;
import com.odontosis.service.ParametrosService;
import com.odontosis.service.ReciboService;
import com.odontosis.service.UsuarioService;
import com.odontosis.view.OdontosisAction;
/**
 * Acao para o login de usuario
 * 
 * @author pablo
 *
 */
public class AcaoParametrosMalaDireta extends OdontosisAction<ReciboService> {
	@Override
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) throws Exception {
		FormParametrosMalaDireta formulario = (FormParametrosMalaDireta) form;
		if(StringUtils.isEmpty(formulario.getMetodo()))
		{
			return onIniciarTela(mapping, form, request, response);
		}
		return onSalvar(mapping, form, request, response);
	}
	
	
	public ActionForward onIniciarTela(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) throws Exception {
		
		FormParametrosMalaDireta formulario = (FormParametrosMalaDireta) form;
		ParametrosMalaDiretaService parametrosService = ContainerIoc.getParametrosMalaDiretaService();
		ParametrosMalaDireta parametrosMalaDireta = parametrosService.load(1L);
		formulario.transferirParaForm(formulario, parametrosMalaDireta);
		
		return mapping.getInputForward();
	}
	
	public ActionForward onSalvar(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response) throws Exception {
		FormParametrosMalaDireta formulario = (FormParametrosMalaDireta) form;
		
		ParametrosMalaDiretaService parametrosService = ContainerIoc.getParametrosMalaDiretaService();
		ParametrosMalaDireta parametrosMalaDireta = parametrosService.load(1L);
		formulario.transferirParaBOs(formulario, parametrosMalaDireta);
		parametrosMalaDireta.setId(1l);
		parametrosService.saveOrUpdate(parametrosMalaDireta);
	
		
		Collection<String> sucesso = new ArrayList<String>();
		sucesso.add("Configurações Atualizadas com Sucesso.");
		request.setAttribute("sucesso", sucesso);
		
		return mapping.getInputForward();
	}

}
